64 research outputs found

    Exact Distance Oracles for Planar Graphs

    Full text link
    We present new and improved data structures that answer exact node-to-node distance queries in planar graphs. Such data structures are also known as distance oracles. For any directed planar graph on n nodes with non-negative lengths we obtain the following: * Given a desired space allocation S∈[nlg⁑lg⁑n,n2]S\in[n\lg\lg n,n^2], we show how to construct in O~(S)\tilde O(S) time a data structure of size O(S)O(S) that answers distance queries in O~(n/S)\tilde O(n/\sqrt S) time per query. As a consequence, we obtain an improvement over the fastest algorithm for k-many distances in planar graphs whenever k∈[n,n)k\in[\sqrt n,n). * We provide a linear-space exact distance oracle for planar graphs with query time O(n1/2+eps)O(n^{1/2+eps}) for any constant eps>0. This is the first such data structure with provable sublinear query time. * For edge lengths at least one, we provide an exact distance oracle of space O~(n)\tilde O(n) such that for any pair of nodes at distance D the query time is O~(minD,n)\tilde O(min {D,\sqrt n}). Comparable query performance had been observed experimentally but has never been explained theoretically. Our data structures are based on the following new tool: given a non-self-crossing cycle C with c=O(n)c = O(\sqrt n) nodes, we can preprocess G in O~(n)\tilde O(n) time to produce a data structure of size O(nlg⁑lg⁑c)O(n \lg\lg c) that can answer the following queries in O~(c)\tilde O(c) time: for a query node u, output the distance from u to all the nodes of C. This data structure builds on and extends a related data structure of Klein (SODA'05), which reports distances to the boundary of a face, rather than a cycle. The best distance oracles for planar graphs until the current work are due to Cabello (SODA'06), Djidjev (WG'96), and Fakcharoenphol and Rao (FOCS'01). For Οƒβˆˆ(1,4/3)\sigma\in(1,4/3) and space S=nΟƒS=n^\sigma, we essentially improve the query time from n2/Sn^2/S to n2/S\sqrt{n^2/S}.Comment: To appear in the proceedings of the 23rd ACM-SIAM Symposium on Discrete Algorithms, SODA 201

    Multiple-Source Multiple-Sink Maximum Flow in Directed Planar Graphs in O(n1.5log⁑n)O(n^{1.5} \log n) Time

    Full text link
    We give an O(n1.5log⁑n)O(n^{1.5} \log n) algorithm that, given a directed planar graph with arc capacities, a set of source nodes and a set of sink nodes, finds a maximum flow from the sources to the sinks.Comment: to be merged with 1) Yahav Nussbaum 1012.4767 2) Philip N. Klein and Shay Mozes 1008.5332 3) Glencora Borradaile and Christian Wulff-Nilsen 1008.496

    Exact Distance Oracles for Planar Graphs with Failing Vertices

    Full text link
    We consider exact distance oracles for directed weighted planar graphs in the presence of failing vertices. Given a source vertex uu, a target vertex vv and a set XX of kk failed vertices, such an oracle returns the length of a shortest uu-to-vv path that avoids all vertices in XX. We propose oracles that can handle any number kk of failures. More specifically, for a directed weighted planar graph with nn vertices, any constant kk, and for any q∈[1,n]q \in [1,\sqrt n], we propose an oracle of size O~(nk+3/2q2k+1)\tilde{\mathcal{O}}(\frac{n^{k+3/2}}{q^{2k+1}}) that answers queries in O~(q)\tilde{\mathcal{O}}(q) time. In particular, we show an O~(n)\tilde{\mathcal{O}}(n)-size, O~(n)\tilde{\mathcal{O}}(\sqrt{n})-query-time oracle for any constant kk. This matches, up to polylogarithmic factors, the fastest failure-free distance oracles with nearly linear space. For single vertex failures (k=1k=1), our O~(n5/2q3)\tilde{\mathcal{O}}(\frac{n^{5/2}}{q^3})-size, O~(q)\tilde{\mathcal{O}}(q)-query-time oracle improves over the previously best known tradeoff of Baswana et al. [SODA 2012] by polynomial factors for q=Ω(nt)q = \Omega(n^t), t∈(1/4,1/2]t \in (1/4,1/2]. For multiple failures, no planarity exploiting results were previously known

    Faster Shortest Paths in Dense Distance Graphs, with Applications

    Full text link
    We show how to combine two techniques for efficiently computing shortest paths in directed planar graphs. The first is the linear-time shortest-path algorithm of Henzinger, Klein, Subramanian, and Rao [STOC'94]. The second is Fakcharoenphol and Rao's algorithm [FOCS'01] for emulating Dijkstra's algorithm on the dense distance graph (DDG). A DDG is defined for a decomposition of a planar graph GG into regions of at most rr vertices each, for some parameter r<nr < n. The vertex set of the DDG is the set of Θ(n/r)\Theta(n/\sqrt r) vertices of GG that belong to more than one region (boundary vertices). The DDG has Θ(n)\Theta(n) arcs, such that distances in the DDG are equal to the distances in GG. Fakcharoenphol and Rao's implementation of Dijkstra's algorithm on the DDG (nicknamed FR-Dijkstra) runs in O(nlog⁑(n)rβˆ’1/2log⁑r)O(n\log(n) r^{-1/2} \log r) time, and is a key component in many state-of-the-art planar graph algorithms for shortest paths, minimum cuts, and maximum flows. By combining these two techniques we remove the log⁑n\log n dependency in the running time of the shortest-path algorithm, making it O(nrβˆ’1/2log⁑2r)O(n r^{-1/2} \log^2r). This work is part of a research agenda that aims to develop new techniques that would lead to faster, possibly linear-time, algorithms for problems such as minimum-cut, maximum-flow, and shortest paths with negative arc lengths. As immediate applications, we show how to compute maximum flow in directed weighted planar graphs in O(nlog⁑p)O(n \log p) time, where pp is the minimum number of edges on any path from the source to the sink. We also show how to compute any part of the DDG that corresponds to a region with rr vertices and kk boundary vertices in O(rlog⁑k)O(r \log k) time, which is faster than has been previously known for small values of kk

    A Polynomial-time Bicriteria Approximation Scheme for Planar Bisection

    Full text link
    Given an undirected graph with edge costs and node weights, the minimum bisection problem asks for a partition of the nodes into two parts of equal weight such that the sum of edge costs between the parts is minimized. We give a polynomial time bicriteria approximation scheme for bisection on planar graphs. Specifically, let WW be the total weight of all nodes in a planar graph GG. For any constant Ρ>0\varepsilon > 0, our algorithm outputs a bipartition of the nodes such that each part weighs at most W/2+ΡW/2 + \varepsilon and the total cost of edges crossing the partition is at most (1+Ρ)(1+\varepsilon) times the total cost of the optimal bisection. The previously best known approximation for planar minimum bisection, even with unit node weights, was O(log⁑n)O(\log n). Our algorithm actually solves a more general problem where the input may include a target weight for the smaller side of the bipartition.Comment: To appear in STOC 201
    • …
    corecore